1. Field of the Invention
The present invention relates to a movie (video) on demand system of the type wherein multiple clients are serviced by video streams delivered from a central video server.
2. Related Art
With the advent of digital video technology, it is feasible to provide video-on-demand services to a large number of clients over a geographically distributed network. Because of the hard real-time constraints on response time, sufficient resources are reserved on the server to guarantee continuous delivery of a video stream to the client. With a large number of users, the required disk bandwidth can be very high. With falling memory prices, efficient buffering of video data can be cost-effective in reducing the disk bandwidth requirement.
Traditional buffer management policies employed by various software systems are based upon the concept of a "hot set" of data which is much smaller in size than the total address space. Applying this concept to the video-on-demand environment is not very useful since each multimedia object (e.g. movie) is very large. Some video objects may be more popular than the others, however buffering even a small number of popular video objects requires a very large memory space. Buffering policies which operate at the block level (e.g. single page) do not make sense for the following reasons. First, the unpredictable nature of the buffer hits under an algorithm such as LRU makes it difficult for the server to guarantee continuous delivery of the stream as required for multimedia applications. Additionally, as with whole file buffering, the buffer hit probability will be very small unless a very large buffer size is used.